package edu.gxmzu.task.models;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author 欧嘉淇
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonIgnoreProperties(value= {"handler"})
@Schema(description = "查询任务完成时返回的数据模型")
public class WorkModel {
    @Schema(description = "任务id")
    private String id;  //任务id
    @Schema(description = "任务所属用户id")
    private String userId;  // 任务所属用户id
    @Schema(description = "任务所属用户名")
    private String userName; // 任务所属用户名
    @Schema(description = "指派人id（自己创建：NULL，被派发：绑定管理员id）")
    private String appointorId;  // 指派人id（自己创建：NULL，被派发：绑定管理员id）
    @Schema(description = "指派人姓名")
    private String appointorName; // 指派人姓名
    @Schema(description = "任务状态id（0：进行中（待办），1:已完成（已办），2:已逾期（未完成））")
    private Integer workStatusId;  // 任务状态id（0：进行中（待办），1:已完成（已办），2:已逾期（未完成））
    @Schema(description = "任务状态")
    private String workStatusName; // 任务状态
    @Schema(description = "任务的优先级(0:一般，1:重要，2:紧急)")
    private Integer priorityId;  // 任务的优先级(0:一般，1:重要，2:紧急)
    @Schema(description = "附件id（没有附件默认NULL）")
    private String attachmentId;  // 附件id（没有附件默认NULL）
    @Schema(description = "附件名")
    private String attachmentName; // 附件名
    @Schema(description = "标题")
    private String title;  // 标题
    @Schema(description = "任务的详细描述")
    private String content;  // 任务的详细描述
    @Schema(description = "任务要求")
    private String require;  // 任务要求
    @Schema(description = "创建任务的时间戳")
    private String createTime;  // 创建任务的时间戳
    @Schema(description = "最后一次更新的时间戳")
    private String updateTime;  // 最后一次更新的时间戳
    @Schema(description = "最后一次更新的时间戳")
    private String endTime;  // 最后一次更新的时间戳
}
